package java8;

import java.util.ArrayList;
import java.util.List;

public class A {

    public static void main(String[] args) {

        /*List<B extends ?> list1 = new ArrayList<>();	// 协变——父类引用指向子类
        list1.add(new B());  // 错误，容器不可写，不能放入任何值（null 除外）
        A a = list1.get(1);


        List<? super B> list = new ArrayList<A>();	// 逆变——子类引用指向父类
        list.add(new A());	  // 编译错误，集合中放入的元素类型能为 B 及 B 子类型
        list.add(new B());    // work
        Object b = list.get(0);*/

    }
}
